package com.jkl.untils.excel;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface ExcelField {
    /**
     * 属性的标题名称
     *
     * @return 表头名
     */
    String title();

    /**
     * 在excel的顺序
     *
     * @return 列表顺序
     */
    int order() default Integer.MAX_VALUE;

    /**
     * 数据字典对应 key
     * @return
     */
    String[] dicKey() default {};

    /**
     * 数据字典对应 value
     * @return
     */
    String[] dicValue() default {};

    /**
     * 是否导出列
     * @return
     */
    boolean isExport() default true;

    /**
     * 是否主键
     * @return
     */
    boolean isPK() default false;

    /**
     * 是否自增
     * @return
     */
    boolean isIncrease() default false;

    /**
     * 字符数
     * @return
     */
    int width() default 15;

    /**
     * 是否为导入的列-用于模板校验
     * @return
     */
    boolean isImport()  default true;
}
